package com.leinao.media.entity;

/**
 * 测温规则参数
 *
 * @author zhangyu
 * @date 2021/12/7 20:48
 */
public class TemperatureRuleParam extends BaseDeviceParam {

    /**
     * 相机类型
     */
    private int type;

    /**
     * 通道号
     */
    private int channel;

    /**
     * 预置点位号
     */
    private int locationIndex;

    /**
     * 是否启用 0- 否，1- 是
     */
    private int ruleEnable;

    /**
     * 规则ID
     */
    private int ruleId;

    /**
     * 规则名称
     */
    private String ruleName;

    /**
     * 规则类型 0- 点，1- 框，2- 线
     */
    private int ruleType;

    /**
     * 发射率
     */
    private float fEmissivity;

    /**
     * 距离
     */
    private int distance;

    /**
     * 反射温度
     */
    private float fReflectiveTemperature;

    /**
     * 是否启用反射温度 0- 否，1- 是
     */
    private int reflectiveEnable;

    /**
     * 告警规则 0- 高温大于，1- 高温小于，2- 低温大于，3- 低温小于，4- 平均温大于，5- 平均温小于，6- 温差大于，7- 温差小于
     */
    private int alarmRule;

    /**
     * 报警温度
     */
    private float alarmTemperature;

    /**
     * 点测温坐标
     */
    private PointParam pointParam;

    /**
     * 框测温坐标
     */
    private RegionParam regionParam;

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public int getChannel() {
        return channel;
    }

    public void setChannel(int channel) {
        this.channel = channel;
    }

    public int getLocationIndex() {
        return locationIndex;
    }

    public void setLocationIndex(int locationIndex) {
        this.locationIndex = locationIndex;
    }

    public int getRuleEnable() {
        return ruleEnable;
    }

    public void setRuleEnable(int ruleEnable) {
        this.ruleEnable = ruleEnable;
    }

    public int getRuleId() {
        return ruleId;
    }

    public void setRuleId(int ruleId) {
        this.ruleId = ruleId;
    }

    public String getRuleName() {
        return ruleName;
    }

    public void setRuleName(String ruleName) {
        this.ruleName = ruleName;
    }

    public int getRuleType() {
        return ruleType;
    }

    public void setRuleType(int ruleType) {
        this.ruleType = ruleType;
    }

    public float getfEmissivity() {
        return fEmissivity;
    }

    public void setfEmissivity(float fEmissivity) {
        this.fEmissivity = fEmissivity;
    }

    public int getDistance() {
        return distance;
    }

    public void setDistance(int distance) {
        this.distance = distance;
    }

    public float getfReflectiveTemperature() {
        return fReflectiveTemperature;
    }

    public void setfReflectiveTemperature(float fReflectiveTemperature) {
        this.fReflectiveTemperature = fReflectiveTemperature;
    }

    public int getReflectiveEnable() {
        return reflectiveEnable;
    }

    public void setReflectiveEnable(int reflectiveEnable) {
        this.reflectiveEnable = reflectiveEnable;
    }

    public int getAlarmRule() {
        return alarmRule;
    }

    public void setAlarmRule(int alarmRule) {
        this.alarmRule = alarmRule;
    }

    public float getAlarmTemperature() {
        return alarmTemperature;
    }

    public void setAlarmTemperature(float alarmTemperature) {
        this.alarmTemperature = alarmTemperature;
    }

    public PointParam getPointParam() {
        return pointParam;
    }

    public void setPointParam(PointParam pointParam) {
        this.pointParam = pointParam;
    }

    public RegionParam getRegionParam() {
        return regionParam;
    }

    public void setRegionParam(RegionParam regionParam) {
        this.regionParam = regionParam;
    }

    @Override
    public String toString() {
        return "TemperatureRuleParam{" +
                "type=" + type +
                ", channel=" + channel +
                ", locationIndex=" + locationIndex +
                ", ruleEnable=" + ruleEnable +
                ", ruleId=" + ruleId +
                ", ruleName='" + ruleName + '\'' +
                ", ruleType=" + ruleType +
                ", fEmissivity=" + fEmissivity +
                ", distance=" + distance +
                ", fReflectiveTemperature=" + fReflectiveTemperature +
                ", reflectiveEnable=" + reflectiveEnable +
                ", alarmRule=" + alarmRule +
                ", alarmTemperature=" + alarmTemperature +
                ", pointParam=" + pointParam +
                ", regionParam=" + regionParam +
                '}';
    }
}
